Techniques for providing improved perpetrator imaging

ABSTRACT

Techniques for providing improved perpetrator imaging are disclosed. In one particular exemplary embodiment, the techniques may be realized as a method for providing improved perpetrator imaging comprising identifying a client device as at least one of lost and stolen, detecting, on the client device, a difference in first pixel data associated with a first frame of a visual image and second pixel data associated with a second frame of the visual image, and capturing, on the client device, a plurality of photographs in response to detecting the difference.

FIELD OF THE DISCLOSURE

The present disclosure relates generally to anti-theft solutions and,more particularly, to techniques for providing improved perpetratorimaging.

BACKGROUND OF THE DISCLOSURE

The consumer and commercial use of mobile devices (e.g., laptops, mobilephones, tablet personal computers (PCs), net-books, personal digitalassistants (PDAs)) is rapidly increasing. Likewise, mobile device thefthas also increased with the increase in mobile device use. Accordingly,many mobile devices are manufactured with certain anti-theft mechanisms.Many anti-theft mechanisms currently used, however, operateinefficiently and are ineffective.

In view of the foregoing, it may be understood that there may besignificant problems and shortcomings associated with current anti-thefttechnologies.

SUMMARY OF THE DISCLOSURE

Techniques for providing improved perpetrator imaging are disclosed. Inone particular exemplary embodiment, the techniques may be realized as amethod for providing improved perpetrator imaging comprising identifyinga client device as at least one of lost and stolen, detecting, on theclient device, a difference in first pixel data associated with a firstframe of a visual image and second pixel data associated with a secondframe of the visual image, and capturing, on the client device, aplurality of photographs in response to detecting the difference.

In accordance with other aspects of this particular exemplaryembodiment, the identifying the client device as at least one of lostand stolen further may comprise accessing client device status datastored on a server.

In accordance with further aspects of this particular exemplaryembodiment, the detecting the difference may further comprise detectinga difference in first pixel data associated with a plurality of groupsof pixels and second pixel data associated with the plurality of groupsof pixels.

In accordance with additional aspects of this particular exemplaryembodiment, the detecting the difference may further comprise detectingan average difference in first pixel data associated with the pluralityof groups of pixels and second pixel data associated with the pluralityof groups of pixels.

In accordance with other aspects of this particular exemplaryembodiment, the detecting the difference may further comprise detectinga difference that exceeds a predetermined threshold.

In accordance with further aspects of this particular exemplaryembodiment, the detecting the difference may further comprise detectinga difference for a predetermined period of time.

In accordance with additional aspects of this particular exemplaryembodiment, the method may further comprise determining, on the clientdevice, a confidence level for each of the plurality of photographs,ranking, on the client device, the plurality of photographs based on theconfidence level of each of the plurality of photographs, andtransmitting, to a server, one or more of the plurality of photographswith the highest rankings via a network.

In accordance with other aspects of this particular exemplaryembodiment, the determining the confidence level may further compriseexecuting a face detection algorithm.

In accordance with further aspects of this particular exemplaryembodiment, the method may further comprise determining, on the clientdevice, a location value that indicates a location of a potential facein a photograph for each of the plurality of photographs.

In accordance with additional aspects of this particular exemplaryembodiment, the method may further comprise determining, on the clientdevice, a size value that indicates a size of a potential face in aphotograph for each of the plurality of photographs.

In accordance with other aspects of this particular exemplaryembodiment, the ranking the plurality of photographs may furthercomprise ranking based on the confidence level, the location value, andthe size value of each of the plurality of photographs.

In accordance with additional aspects of this particular exemplaryembodiment, the techniques may be realized as at least onenon-transitory processor readable storage medium for storing a computerprogram of instructions configured to be readable by at least oneprocessor for instructing the at least one processor to execute acomputer process.

In another particular exemplary embodiment, the techniques may berealized as an article of manufacture for providing improved perpetratorimaging, the article of manufacture comprising at least onenon-transitory processor readable medium, and instructions stored on theat least one medium, wherein the instructions are configured to bereadable from the at least one medium by at least one processor andthereby cause the at least one processor to operate so as to identify aclient device as at least one of lost and stolen, detect, on the clientdevice, a difference in first pixel data associated with a first frameof a visual image and second pixel data associated with a second frameof the visual image, and capture, on the client device, a plurality ofphotographs in response to detecting the difference.

In another particular exemplary embodiment, the techniques may berealized as a system for providing improved perpetrator imagingcomprising one or more processors communicatively coupled to a network,wherein the one or more processors are configured to identify a clientdevice as at least one of lost and stolen, detect, on the client device,a difference in first pixel data associated with a first frame of avisual image and second pixel data associated with a second frame of thevisual image, and capture, on the client device, a plurality ofphotographs in response to detecting the difference.

In accordance with further aspects of this particular exemplaryembodiment, the one or more processors may be configured to identify theclient device as at least one of lost and stolen by accessing clientdevice status data stored on a server.

In accordance with additional aspects of this particular exemplaryembodiment, the one or more processors may be configured to detect thedifference by detecting a difference in first pixel data associated witha plurality of groups of pixels and second pixel data associated withthe plurality of groups of pixels.

In accordance with other aspects of this particular exemplaryembodiment, the one or more processors may be configured to detect thedifference by detecting an average difference in first pixel dataassociated with the plurality of groups of pixels and second pixel dataassociated with the plurality of groups of pixels.

In accordance with further aspects of this particular exemplaryembodiment, the one or more processors may be configured to detect thedifference by detecting a difference that exceeds a predeterminedthreshold.

In accordance with additional aspects of this particular exemplaryembodiment, the one or more processors may be configured to detect thedifference by detecting a difference for a predetermined period of time.

In accordance with additional aspects of this particular exemplaryembodiment, the one or more processors may be further configured todetermine, on the client device, a confidence level for each of theplurality of photographs, rank, on the client device, the plurality ofphotographs based on the confidence level of each of the plurality ofphotographs, and transmit, to a server, one or more of the plurality ofphotographs with the highest rankings via a network.

The present disclosure will now be described in more detail withreference to exemplary embodiments thereof as shown in the accompanyingdrawings. While the present disclosure is described below with referenceto exemplary embodiments, it should be understood that the presentdisclosure is not limited thereto. Those of ordinary skill in the arthaving access to the teachings herein will recognize additionalimplementations, modifications, and embodiments, as well as other fieldsof use, which are within the scope of the present disclosure asdescribed herein, and with respect to which the present disclosure maybe of significant utility.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to facilitate a fuller understanding of the present disclosure,reference is now made to the accompanying drawings, in which likeelements are referenced with like numerals. These drawings should not beconstrued as limiting the present disclosure, but are intended to beexemplary only.

FIG. 1 shows a block diagram depicting a network architecture containinga platform for providing improved perpetrator imaging in accordance withan embodiment of the present disclosure.

FIG. 2 depicts a block diagram of a computer system in accordance withan embodiment of the present disclosure.

FIG. 3 shows modules of a client in accordance with an embodiment of thepresent disclosure.

FIG. 4 shows a server anti-theft module in accordance with an embodimentof the present disclosure.

FIG. 5 shows pixel data in accordance with an embodiment of the presentdisclosure.

FIG. 6 depicts a method for providing improved perpetrator imaging inaccordance with an embodiment of the present disclosure.

FIG. 7 depicts another method for providing improved perpetrator imagingin accordance with an embodiment of the present disclosure.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

Current anti-theft mechanisms that operate on mobile devices (e.g.,laptops, mobile phones, tablet PCs, net-books, PDAs) may be configuredto capture photographs from a camera coupled to the mobile devices inresponse to the mobile devices being marked as lost or stolen. Suchanti-theft mechanisms capture the photographs in an attempt to capturean image of a perpetrator that may be used to recover a lost or stolenmobile device. Several problems exist, however, with these currentanti-theft mechanisms. First, the mobile devices may be configured tocapture the photographs based on a timer (e.g., capture one photographevery ten minutes). Accordingly, the likelihood of capturing an image ofa perpetrator may be low. Second, the mobile devices may not employ anytechniques to select the photographs that are most likely to contain auseful image of a perpetrator (e.g., an image that contains adistinguishable face) for transmission to a server (e.g., an anti-theftbackend server). Accordingly, the network resources for transmittingphotographs may be inefficiently used.

In one embodiment, certain techniques for providing improved perpetratorimaging are provided. In such an embodiment, a mobile device may beidentified as lost or stolen. Based on such an identification, themobile device may be configured to capture photographs in response todetecting a motion in the mobile device. In certain embodiments,detecting such a motion may include detecting a difference in at leasttwo frames of a visual image (e.g., the capture region) of a cameracoupled to the mobile device. That is, the mobile device may beconfigured to compare a first frame (e.g., the state of all pixels ofthe visual image at a particular point-in-time) of a visual image at afirst time to a second frame (e.g., the state of all pixels of thevisual image at another point-in-time) of the visual image at a secondtime to determine whether the two frames (e.g., the pixel dataassociated with the two frames) are sufficiently different. In otherembodiments, detecting such a motion may include analyzing datagenerated by any, or a combination, of an accelerometer, a motionsensor, and a tilt sensor.

If, for example, motion is detected in the mobile device, a cameracoupled to the mobile device may capture one or more photographs. If,however, motion is not detected in the mobile device, the mobile devicemay continue to poll for data that indicates that two frames aresufficiently different.

In another embodiment, other techniques for providing improvedperpetrator imaging are provided. In such an embodiment, a mobile devicemay calculate a confidence level that a face is contained in aphotograph using one or more face detection algorithms. The mobiledevice may also rank one or more photographs based on the correspondingconfidence levels. One or more photographs with the highest ranking maybe transmitted to a server (e.g., an anti-theft backend server) toreduce the amount of network resources necessary to implement thepresently discussed anti-theft techniques. In certain embodiments, alocation value that indicates a location of a potential face in aphotograph and a size value that indicates a size of a potential face ina photograph may be calculated for each photograph. Accordingly, thephotographs may be ranked based on any, or a combination, of aconfidence level, location value, and a size value.

FIG. 1 shows a block diagram depicting a network architecture 100containing a platform for providing improved perpetrator imaging inaccordance with an embodiment of the present disclosure. FIG. 1 is asimplified view of network architecture 100, which may includeadditional elements that are not depicted. Network architecture 100 maycontain client 110, client 120, server 140A, as well as server 140E (oneor more of which may be implemented using computer system 200 shown inFIG. 2). Client 110, client 120, server 140A, and server 140E may becommunicatively coupled to a network 150. Server 140A may becommunicatively coupled to storage devices 160A(1)-(N), and server 140Bmay be communicatively coupled to storage devices 160B(1)-(N). Server140A may contain a server anti-theft module 142. Server 140A and server140B may be communicatively coupled to a SAN (Storage Area Network)fabric 170. SAN fabric 170 may support access to storage devices180(1)-(N) by server 140A and server 140B, and by client 110 and client120 via network 150. Server 140A may be communicatively coupled tonetwork 190. Client 120 may contain one or more modules for providingimproved perpetrator imaging including client anti-theft module 122,photograph capture module 124, and upload module 126.

With reference to computer system 200 of FIG. 2, modem 247, networkinterface 248, or some other method may be used to provide connectivityfrom one or more of client 110 and client 120 to network 150. Client 120may be able to access information on server 140A or server 140B using,for example, a web browser or other client software. Such a client mayallow client 120 to access data hosted by server 140A or server 140B orone of storage devices 160A(1)-(N), 160B(1)-(N), and/or 180(1)-(N).

Networks 150 and 190 may be local area networks (LANs), wide areanetworks (WANs), the Internet, cellular networks, satellite networks, orother networks that permit communication between client 110, client 120,server 140A, server 140B, and other devices communicatively coupled tonetworks 150 and 190. Networks 150 and 190 may further include one, orany number, of the exemplary types of networks mentioned above operatingas a stand-alone network or in cooperation with each other. Networks 150and 190 may utilize one or more protocols of one or more clients orservers to which they are communicatively coupled. Networks 150 and 190may translate to or from other protocols to one or more protocols ofnetwork devices. Although networks 150 and 190 are each depicted as onenetwork, it should be appreciated that according to one or moreembodiments, networks 150 and 190 may each comprise a plurality ofinterconnected networks.

Storage devices 160A(1)-(N), 160B(1)-(N), and/or 180(1)-(N) may benetwork accessible storage and may be local, remote, or a combinationthereof to client 110, client 120, server 140A, or server 140B. Storagedevices 160A(1)-(N), 160B(1)-(N), and/or 180(1)-(N) may utilize aredundant array of inexpensive disks (“RAID”), magnetic tape, disk, astorage area network (“SAN”), an Internet small computer systemsinterface (“iSCSI”) SAN, a Fibre Channel SAN, a common Internet FileSystem (“CIFS”), network attached storage (“NAS”), a network file system(“NFS”), optical based storage, or other computer accessible storage.Storage devices 160A(1)-(N), 160B(1)-(N), and/or 180(1)-(N) may be usedfor backup, replication, or archival purposes.

According to some embodiments, client 110 and client 120 may be asmartphone, PDA, desktop computer, a laptop computer, a server, anothercomputer, or another device coupled via a wireless or wired connectionto network 150. Client 110 and client 120 may receive data from userinput, a database, a file, a web service, and/or an applicationprogramming interface.

Server 140A and server 140B may be application servers, archivalplatforms, backup servers, backend servers, network storage devices,media servers, email servers, document management platforms, enterprisesearch servers, or other devices communicatively coupled to network 150.Server 140A and server 140B may utilize one of storage devices160A(1)-(N), 160B(1)-(N), and/or 180(1)-(N) for the storage ofapplication data, replication data, backup data, or other data. Server140A and server 140B may be hosts, such as an application server, whichmay process data traveling between client 110 and client 120 and abackup platform, a backup process, and/or storage. According to someembodiments, server 140A and server 140B may be platforms used forbacking up and/or archiving data.

Client anti-theft module 122, photograph capture module 124, uploadmodule 126, and server anti-theft module 142 are discussed in furtherdetail below.

FIG. 2 depicts a block diagram of a computer system 200 in accordancewith an embodiment of the present disclosure. Computer system 200 issuitable for implementing techniques in accordance with the presentdisclosure. Computer system 200 may include a bus 212 which mayinterconnect major subsystems of computer system 200, such as a centralprocessor 214, a system memory 217 (e.g. RAM (Random Access Memory), ROM(Read Only Memory), flash RAM, or the like), an Input/Output (I/O)controller 218, an external audio device, such as a speaker system 220via an audio output interface 222, an external device, such as a displayscreen 224 via display adapter 226, serial ports 228 and 230, a keyboard232 (interfaced via a keyboard controller 233), a storage interface 234,a floppy disk drive 237 operative to receive a floppy disk 238, a hostbus adapter (HBA) interface card 235A operative to connect with a FibreChannel network 290, a host bus adapter (HBA) interface card 235Boperative to connect to a SCSI bus 239, and an optical disk drive 240operative to receive an optical disk 242. Also included may be a mouse246 (or other point-and-click device, coupled to bus 212 via serial port228), a modem 247 (coupled to bus 212 via serial port 230), networkinterface 248 (coupled directly to bus 212), power manager 250, andbattery 252.

Bus 212 allows data communication between central processor 214 andsystem memory 217, which may include read-only memory (ROM) or flashmemory (neither shown), and random access memory (RAM) (not shown), aspreviously noted. The RAM may be the main memory into which theoperating system and application programs may be loaded. The ROM orflash memory can contain, among other code, the Basic Input-Outputsystem (BIOS) which controls basic hardware operation such as theinteraction with peripheral components. Applications resident withcomputer system 200 may be stored on and accessed via a computerreadable medium, such as a hard disk drive (e.g., fixed disk 244), anoptical drive (e.g., optical drive 240), a floppy disk unit 237, orother storage medium. For example, anti-theft module 122, photographcapture module 124, and upload module 126 may be resident in systemmemory 217.

Storage interface 234, as with the other storage interfaces of computersystem 200, can connect to a standard computer readable medium forstorage and/or retrieval of information, such as a fixed disk drive 244.Fixed disk drive 244 may be a part of computer system 200 or may beseparate and accessed through other interface systems. Modem 247 mayprovide a direct connection to a remote server via a telephone link orto the Internet via an Internet service provider (ISP). Networkinterface 248 may provide a direct connection to a remote server via adirect network link to the Internet via a POP (point of presence).Network interface 248 may provide such connection using wirelesstechniques, including digital cellular telephone connection, CellularDigital Packet Data (CDPD) connection, digital satellite data connectionor the like.

Many other devices or subsystems (not shown) may be connected in asimilar manner (e.g., document scanners, digital cameras and so on).Conversely, all of the devices shown in FIG. 2 need not be present topractice the present disclosure. The devices and subsystems can beinterconnected in different ways from that shown in FIG. 2. Code toimplement the present disclosure may be stored in computer-readablestorage media such as one or more of system memory 217, fixed disk 244,optical disk 242, or floppy disk 238. Code to implement the presentdisclosure may also be received via one or more interfaces and stored inmemory. The operating system provided on computer system 200 may beMS-DOS®, MS-WINDOWS®, OS/2®, OS X®, UNIX®, Linux®, or another knownoperating system.

Power manager 250 may monitor a power level of battery 252. Powermanager 250 may provide one or more APIs (Application ProgrammingInterfaces) to allow determination of a power level, of a time windowremaining prior to shutdown of computer system 200, a power consumptionrate, an indicator of whether computer system is on mains (e.g., ACPower) or battery power, and other power related information. Accordingto some embodiments, APIs of power manager 250 may be accessibleremotely (e.g., accessible to a remote backup management module via anetwork connection). According to some embodiments, battery 252 may bean Uninterruptable Power Supply (UPS) located either local to or remotefrom computer system 200. In such embodiments, power manager 250 mayprovide information about a power level of an UPS.

FIG. 3 shows modules of a client 120 in accordance with an embodiment ofthe present disclosure. As illustrated, the client 120 may contain oneor more components including a client anti-theft module 122, aphotograph capture module 124, and an upload module 126.

The description below describes network elements, computers, and/orcomponents of a system and method for providing improved perpetratorimaging that may include one or more modules. As used herein, the term“module” may be understood to refer to computing software, firmware,hardware, and/or various combinations thereof. Modules, however, are notto be interpreted as software which is not implemented on hardware,firmware, or recorded on a processor readable recordable storage medium(i.e., modules are not software per se). It is noted that the modulesare exemplary. The modules may be combined, integrated, separated,and/or duplicated to support various applications. Also, a functiondescribed herein as being performed at a particular module may beperformed at one or more other modules and/or by one or more otherdevices instead of or in addition to the function performed at theparticular module. Further, the modules may be implemented acrossmultiple devices and/or other components local or remote to one another.Additionally, the modules may be moved from one device and added toanother device, and/or may be included in both devices.

Client anti-theft module 122 may be configured to identify a clientdevice (e.g., client 120) as lost or stolen. In one embodiment, theclient anti-theft module 122 may identify a client device (e.g., client120) as lost or stolen by accessing client device status data. Clientdevice status data may indicate a possession status (e.g., lost, stolen)of one or more client devices. In certain embodiments, the clientanti-theft module 122 may access client device status data on acommunicatively coupled server (e.g., an anti-theft backend server).

Client anti-theft module 122 may be configured to determine whether aclient device (e.g., client 120) has been lost or stolen. In oneembodiment, the client anti-theft module 122 may determine whether aclient device (e.g., client 120) has been lost or stolen based ongeographic data (e.g., geo-sensing data, global positioning system (GPS)data) generated by or on behalf of the client device. For example, theclient anti-theft module 122 may determine that a client device (e.g.,client 120) has been lost or stolen based on geographic data thatindicates that the client device has been moved from a particularlocation (e.g., ten feet outside of a particular office building, fivefeet outside of a dormitory room). In another embodiment, the clientanti-theft module 122 may determine whether a client device (e.g.,client 120) has been lost or stolen based on motion data generated by oron behalf of the client device. For example, the client anti-theftmodule 122 may determine that a client device (e.g., client 120) hasbeen lost or stolen based on motion data that indicates that the clientdevice has been moved a particular distance (e.g., two inches from aninitial position, one foot from an initial position). In anotherembodiment, the client anti-theft module 122 may determine whether aclient device (e.g., client 120) has been lost or stolen based on forcedata generated by or on behalf of the client device. For example, theclient anti-theft module 122 may determine that a client device (e.g.,client 120) has been lost or stolen based on force data that indicatesthat a security cable attached to the client device has been removed(e.g., forcefully removed).

Photograph capture module 124 may be configured to detect motion in aclient device (e.g., client 120) in response to the client device beingidentified as lost or stolen. In one embodiment, the photograph capturemodule 124 may detect motion in a client device (e.g., client 120) bydetecting a difference between at least two frames of a visual image(e.g., capture region) of a camera coupled to the client device. In suchan embodiment, the photograph capture module 124 may compare pixel dataassociated with a first frame of a visual image at a first time to pixeldata associated with a second frame of the visual image at a second timeto determine whether the two frames are sufficiently different. That is,the photograph capture module 124 may compare pixel data from twodifferent points-in-time to determine whether the pixel data has changedovertime (e.g., motion in the client device is detected).

In certain embodiments, the photograph capture module 124 may determinethat a sufficient difference exists between two frames if the averagedifference in pixel data of groups of pixels exceeds a predeterminedthreshold (e.g., a predetermined amount of difference). For example, athreshold may be determined to be 25% based on design preferences.Accordingly, if the pixel data changes in at least an average of 25% ofpixels between two frames, the photograph capture module 124 maydetermine that a sufficient difference exists between the two frames andmotion is detected.

In certain embodiments, the photograph capture module 124 may determinethat a sufficient difference exists if the predetermined amount ofdifference in pixel data exist between multiple frames for apredetermined period of time. For example, an amount of differencethreshold may be determined to be 25% and a period of time may bedetermined to be one second based on design preferences. Accordingly, ifthe pixel data changes in at least an average of 25% of pixels betweenmultiple frames for at least one second, the photograph capture module124 may determine that a sufficient difference exists between themultiple frames and motion is detected.

In another embodiment, the photograph capture module 124 may detectmotion in a client device (e.g., client 120) by accessing and analyzingdata generated by any, or a combination, of an accelerometer, a motionsensor, and a tilt sensor. That is, the photograph capture module 124may determine that motion is detected in client device (e.g., client120) if data generated by an accelerometer, a motion sensor, or a tiltsensor coupled to the client device exceeds one or more predeterminedthresholds.

In response to motion being detected in a client device (e.g., client120), the photograph capture module 124 may be configured to capture oneor more photographs using a camera coupled to the client device. In oneembodiment, the photograph capture module 124 may capture a sequence ofphotographs in response to motion being detected in the client device.In another embodiment, the photograph capture module 124 may capture oneor more photographs based on a predetermined interval (e.g., capturefive photographs every five seconds, capture one photograph every othersecond) in response to motion being detected in the client device.

Photograph capture module 124 may be configured to calculate aconfidence level, a location value, and a size value for each photographcaptured. In one embodiment, the photograph capture module 124 maycalculate a confidence level that a face is contained in a photographfor each photograph captured by executing one or more face detectionalgorithms. The face detection algorithms executed by the photographcapture module 124 may include any, or a combination, of a facedetection as a pattern-classification task algorithm (e.g., implementingbinary pattern-classification task), a controlled background facedetection algorithm (e.g., removing plain or static backgrounds toreveal and detect a face), a color face detection algorithm (e.g., usingskin color to find face segments), a motion face detection algorithm(e.g., detecting specific types of motions that are unique to faces,such as: blinking, raised eyebrows, flared nostrils, wrinkled forehead,opened mouth), and a model-based face detection algorithm (e.g., passingmodels of faces over images to detect faces).

In another embodiment, the photograph capture module 124 may calculate alocation value that indicates a location of a potential face (e.g., bydistance) that is contained in a photograph for each photograph capturedby executing the one or more face detection algorithms described above.For example, a first location value associated with a first capturedphotograph may indicate that a potential face was located approximately100 feet from the camera during capture. In another example, a secondlocation value associated with a second captured photograph may indicatethat a potential face was located approximately two feet from the cameraduring capture.

In another embodiment, the photograph capture module 124 may calculate asize value that indicates a size of a potential face (e.g., by heightand width, by circumference) that is contained in a photograph for eachphotograph captured by executing the one or more face detectionalgorithms described above. For example, a first size value associatedwith a first captured photograph may indicate that a potential face hada height of two centimeters and a width of one centimeter duringcapture. In another example, a second size value associated with asecond captured photograph may indicate that a potential face had aheight of eight inches and a width of five inches during capture.

Photograph capture module 124 may be configured to rank each photographcaptured based on any, or a combination, of a corresponding confidencelevel, a corresponding location value, and a corresponding size value.Accordingly, the photographs with the highest confidence levels, theshortest location values, and the largest size values may be ranked thehighest. Furthermore, the photographs with the lowest confidence levels,the longest location values, the smallest size values may be ranked thelowest. The photograph capture module 124 may select and transmit one ormore of the photographs with the highest rankings to a server (e.g., ananti-theft backend server) to aid in the recovery of the lost or stolenclient device.

Upload module 126 may be configured to transmit the selected photographsto a server (e.g., an anti-theft backend server). In one embodiment, theupload module 126 may be configured to detect when a client device(e.g., client 120) is connected to a network (e.g., the Internet). Inresponse to detecting network connectivity, the upload module 126 maytransmit the selected photographs to the server (e.g., an anti-theftbackend server).

FIG. 4 shows a server anti-theft module 142 in accordance with anembodiment of the present disclosure. As illustrated, the serveranti-theft module 142 may contain one or more components including alost/stolen identification module 400 and a photograph receipt module402.

The description below describes network elements, computers, and/orcomponents of a system and method for providing improved perpetratorimaging that may include one or more modules. As used herein, the term“module” may be understood to refer to computing software, firmware,hardware, and/or various combinations thereof. Modules, however, are notto be interpreted as software which is not implemented on hardware,firmware, or recorded on a processor readable recordable storage medium(i.e., modules are not software per se). It is noted that the modulesare exemplary. The modules may be combined, integrated, separated,and/or duplicated to support various applications. Also, a functiondescribed herein as being performed at a particular module may beperformed at one or more other modules and/or by one or more otherdevices instead of or in addition to the function performed at theparticular module. Further, the modules may be implemented acrossmultiple devices and/or other components local or remote to one another.Additionally, the modules may be moved from one device and added toanother device, and/or may be included in both devices.

Lost/stolen identification module 400 may be configured to store clientdevice status data associated with multiple communicatively coupledclient devices (e.g., client 110, 120). Client device status data mayindicate a possession status (e.g., lost, stolen) of one or more clientdevices. Accordingly, as a client device is reported as lost or stolen,the lost/stolen identification module 400 may update the appropriateclient device status data.

Photograph receipt module 402 may be configured to receive one or morephotographs from one or more communicatively coupled client devices(e.g., client 110, client 120) that have been identified as lost orstolen. In certain embodiments, the photograph receipt module 402 maystore the photographs received for use in recovering the lost or stolenclient device.

FIG. 5 shows pixel data in accordance with an embodiment of the presentdisclosure. As illustrated, a visual image 500 of a camera coupled to aclient device (e.g., client 120) may contain multiple groups of pixels.For example, the visual image 500 may contain pixel groups 502, 504,506, 508, 510, 512, 514, 516, 518. Each pixel group may contain ninepixels.

Based on pixel data from two consecutive frames, the black pixels may beconsidered changed while the white pixels may be considered unchanged.As shown, pixel group 502 may have a 33% pixel difference, pixel group504 may have a 67% pixel difference, pixel group 506 may have a 44%pixel difference, pixel group 508 may have a 78% pixel difference, pixelgroup 510 may have a 44% pixel difference, pixel group 512 may have a56% pixel difference, pixel group 514 may have a 56% pixel difference,pixel group 516 may have a 44% pixel difference, and pixel group 518 mayhave a 56% pixel difference. Based on these pixel differences, theaverage pixel difference between two consecutive frames for pixel groups502, 504, 506, 508, 510, 512, 514, 516, 518 may be 53%. If, for example,the predetermined amount of difference is 25%, the difference in pixeldata between two consecutive frames represented in FIG. 5 may besufficiently different for motion in a client device to be detected.

FIG. 6 depicts a method 600 for providing improved perpetrator imagingin accordance with an embodiment of the present disclosure. At block602, the method 600 may begin.

At block 604, a client device may be identified as at least one of lostand stolen. In one embodiment, a client device may be identified as lostor stolen by accessing client device status data stored on acommunicatively coupled server (e.g., an anti-theft backend server).

At block 606, a difference in first pixel data associated with a firstframe of a visual image and second pixel data associated with a secondfrom of the visual image is detected on the client device. The firstframe may be taken at a first time and the second frame may be taken ata second time. Detecting such a difference may indicate motion in aclient device.

At block 608, a plurality of photographs may be captured on the clientdevice in response to detecting the difference. In one embodiment, asequence of multiple photographs may be captured on the client device inresponse to detecting the difference. In another embodiment, one or morephotographs may be captured based on a predetermined interval (e.g.,five photographs every five seconds, one photograph every other second)in response to detecting the difference.

At block 610, the method 600 may end.

FIG. 7 depicts another method 700 for providing improved perpetratorimaging in accordance with an embodiment of the present disclosure. Atblock 702, the method 700 may begin.

At block 704, a plurality of photographs may be captured on a clientdevice in response to identifying the client device as at least one oflost and stolen. In one embodiment, a sequence of multiple photographsmay be captured on the client device in response to detecting thedifference. In another embodiment, one or more photographs may becaptured based on a predetermined interval (e.g., five photographs everyfive seconds, one photograph every other second) in response todetecting the difference.

At block 706, a confidence level that a photograph contains a face isdetermined for each of the plurality of photographs on the clientdevice. In one embodiment, a confidence level is determined for each ofthe plurality of photographs by executing one or more face detectionalgorithms.

At block 708, the plurality of photographs are ranked based on theconfidence level of each of the plurality of photographs on the clientdevice. In one embodiment, the photographs with the highest confidencelevels are ranked the highest, while the photographs with the lowestconfidence levels are ranked the lowest.

At block 710, one or more of the plurality of photographs with thehighest rankings are transmitted to a server. In one embodiment, the oneor more photographs with the highest confidence level rankings aretransmitted to a backend server (e.g., an anti-theft backend server).

At block 712, the method 700 may end.

At this point it should be noted that providing improved perpetratorimaging in accordance with the present disclosure as described abovetypically involves the processing of input data and the generation ofoutput data to some extent. This input data processing and output datageneration may be implemented in hardware or software. For example,specific electronic components may be employed in a server anti-theftmodule or similar or related circuitry for implementing the functionsassociated with providing improved perpetrator imaging in accordancewith the present disclosure as described above. Alternatively, one ormore processors operating in accordance with instructions may implementthe functions associated with providing improved perpetrator imaging inaccordance with the present disclosure as described above. If such isthe case, it is within the scope of the present disclosure that suchinstructions may be stored on one or more processor readable storagemedia (e.g., a magnetic disk or other storage medium), or transmitted toone or more processors via one or more signals embodied in one or morecarrier waves.

The present disclosure is not to be limited in scope by the specificembodiments described herein. Indeed, other various embodiments of andmodifications to the present disclosure, in addition to those describedherein, will be apparent to those of ordinary skill in the art from theforegoing description and accompanying drawings. Thus, such otherembodiments and modifications are intended to fall within the scope ofthe present disclosure. Further, although the present disclosure hasbeen described herein in the context of a particular implementation in aparticular environment for a particular purpose, those of ordinary skillin the art will recognize that its usefulness is not limited thereto andthat the present disclosure may be beneficially implemented in anynumber of environments for any number of purposes. Accordingly, theclaims set forth below should be construed in view of the full breadthand spirit of the present disclosure as described herein.

The invention claimed is:
 1. A method for providing improved perpetratorimaging comprising: identifying a client device as at least one of lostand stolen; detecting, on the client device, a difference in first pixeldata associated with a first frame of a visual image and second pixeldata associated with a second frame of the visual image; capturing, onthe client device, a plurality of photographs in response to detectingthe difference; determining, on the client device, a confidence levelfor each of the plurality of photographs; and ranking, on the clientdevice, the plurality of photographs based on the confidence level ofeach of the plurality of photographs.
 2. The method of claim 1, whereinidentifying the client device as at least one of lost and stolen furthercomprises accessing client device status data stored on a server.
 3. Themethod of claim 1, wherein detecting the difference further comprisesdetecting a difference in first pixel data associated with a pluralityof groups of pixels and second pixel data associated with the pluralityof groups of pixels.
 4. The method of claim 3, wherein detecting thedifference further comprises detecting an average difference in firstpixel data associated with the plurality of groups of pixels and secondpixel data associated with the plurality of groups of pixels.
 5. Themethod of claim 1, wherein detecting the difference further comprisesdetecting a difference that exceeds a predetermined threshold.
 6. Themethod of claim 1, wherein detecting the difference further comprisesdetecting a difference for a predetermined period of time.
 7. The methodof claim 1, further comprising: transmitting, to a server, one or moreof the plurality of photographs with the highest rankings via a network.8. The method of claim 7, wherein determining the confidence levelfurther comprises executing a face detection algorithm.
 9. The method ofclaim 7, further comprising determining, on the client device, alocation value that indicates a location of a potential face in aphotograph for each of the plurality of photographs.
 10. The method ofclaim 9, further comprising determining, on the client device, a sizevalue that indicates a size of a potential face in a photograph for eachof the plurality of photographs.
 11. The method of claim 10, whereinranking the plurality of photographs further comprises ranking based onthe confidence level, the location value, and the size value of each ofthe plurality of photographs.
 12. At least one non-transitory processorreadable storage medium for storing a computer program of instructionsconfigured to be readable by at least one processor for instructing theat least one processor to execute a computer process for performing themethod as recited in claim
 1. 13. An article of manufacture forproviding improved perpetrator imaging, the article of manufacturecomprising: at least one non-transitory processor readable medium; andinstructions stored on the at least one medium; wherein the instructionsare configured to be readable from the at least one medium by at leastone processor and thereby cause the at least one processor to operate soas to: identify a client device as at least one of lost and stolen;detect, on the client device, a difference in first pixel dataassociated with a first frame of a visual image and second pixel dataassociated with a second frame of the visual image; capture, on theclient device, a plurality of photographs in response to detecting thedifference; determine, on the client device, a confidence level for eachof the plurality of photographs; and rank, on the client device, theplurality of photographs based on the confidence level of each of theplurality of photographs.
 14. A system for providing improvedperpetrator imaging comprising: one or more processors communicativelycoupled to a network; wherein the one or more processors are configuredto: identify a client device as at least one of lost and stolen; detect,on the client device, a difference in first pixel data associated with afirst frame of a visual image and second pixel data associated with asecond frame of the visual image; capture, on the client device, aplurality of photographs in response to detecting the difference;determine, on the client device, a confidence level for each of theplurality of photographs; and rank, on the client device, the pluralityof photographs based on the confidence level of each of the plurality ofphotographs.
 15. The system of claim 14, wherein the one or moreprocessors are configured to identify the client device as at least oneof lost and stolen by accessing client device status data stored on aserver.
 16. The system of claim 14, wherein the one or more processorsare configured to detect the difference by detecting a difference infirst pixel data associated with a plurality of groups of pixels andsecond pixel data associated with the plurality of groups of pixels. 17.The system of claim 16, wherein the one or more processors areconfigured to detect the difference by detecting an average differencein first pixel data associated with the plurality of groups of pixelsand second pixel data associated with the plurality of groups of pixels.18. The system of claim 14, wherein the one or more processors areconfigured to detect the difference by detecting a difference thatexceeds a predetermined threshold.
 19. The system of claim 14, whereinthe one or more processors are configured to detect the difference bydetecting a difference for a predetermined period of time.
 20. Thesystem of claim 14, wherein the one or more processors are furtherconfigured to: transmit, to a server, one or more of the plurality ofphotographs with the highest rankings via a network.